package com.lhl.mq.mqServer.core;

import java.io.Serializable;

public class BasicProperties implements Serializable {
    //消息的唯一标识，此处为保证 id 的唯一性，使用 UUID 来作为 messageId
    private String messageId;
    //是一个消息上带有的内容，和 bindingKey 做匹配
    //如果当前交换机的类型是 DIRECT ，此时 routingKey 就表示要转发的队列名
    //如果当前交换机的类型是 FANOUT ，此时 routingKey 无意义
    //如果当前的交换机类型是 TOPIC ，此时 routingKey 就要与 bindingKey 进行匹配，匹配成功才能把消息转发个对应的队列
    private String routingKey;
    //持久化，1 表示不持久化， 2 表示持久化
    private int deliverMode = 1;




    public String getMessageId() {
        return messageId;
    }

    public void setMessageId(String messageId) {
        this.messageId = messageId;
    }

    public String getRoutingKey() {
        return routingKey;
    }

    public void setRoutingKey(String routingKey) {
        this.routingKey = routingKey;
    }

    public int getDeliverMode() {
        return deliverMode;
    }

    public void setDeliverMode(int deliverMode) {
        this.deliverMode = deliverMode;
    }

    @Override
    public String toString() {
        return "BasicProperties{" +
                "messageId='" + messageId + '\'' +
                ", routingKey='" + routingKey + '\'' +
                ", deliverMode=" + deliverMode +
                '}';
    }
}
